As will be appreciated by those skilled in the art, there art two paths in a set associative cache that are critical in terms of the time required to access the cache. One is the cache array access path and the other is the path that determines whether or not be memory address resides in the cache, the so-called hit logic path. For a red operation, in order to speed up the cache access, the hit logic operation and the cache array read operation are typically overlapped in times. That is, both operations are performed in parallel during the same clock cycle. As will also be appreciated by those skilled in the art, in a set associative cache, a tag memory stores at each addressable tag memory location the addresses of two or more (depending on the size of cache) blocks from main memory stored in the cache. A memory request address includes the cache tag memory address where the address of the requested data will reside in cache if it is in the cache. The addresses in the tag memory at that location are read out of the tag memory and compared with the memory request address. Static comparators and dynamic comparators have been proposed in the prior art for comparing die tag address with the requested address in set associative cache memories. However, the implementation of a fully static compare path is very complex and generally slow. Implementation of a fully dynamic compare path is complex both in circuit design and timing.